package io.github.wanggit.antrpc.console.zookeeper;

import io.github.wanggit.antrpc.commons.bean.ConfigItemData;
import io.github.wanggit.antrpc.console.web.vo.ConfigVO;

import java.util.List;

public interface IConfigContainer {

    void saveOrUpdate(ConfigVO configVO);

    void delete(ConfigVO configVO);

    List<String> findAllEnvs(String pattern);

    List<ConfigVO> find(String pattern);

    List<String> findAllSpaces(String keyword, String envName);

    List<ConfigVO> findAllKeys(String keyword, String envName, String spaceName);

    ConfigItemData findConfigItemData(String envName, String spaceName, String key);

    void saveOrUpdateEnv(ConfigVO configVO);

    void saveOrUpdateSpace(ConfigVO configVO);

    void deleteEnv(ConfigVO configVO);

    void deleteSpace(ConfigVO configVO);

    List<ConfigVO> configFuzzyQuery(String pattern);
}
